/***************************************************************************
 * 文件名:IEtVersion.java<br>
 * 版本: <br>
 * 描述: <br>
 * 版权所有: <br>
 * //////////////////////////////////////////////////////// <br>
 * 创建者: robo<br>
 * 创建日期: 2010-11-9 <br>
 * 修改者: <br>
 * 修改日期: <br>
 * 修改说明: <br>
 **************************************************************************/
package com.sunwayhorizo.health.ets.base.service;

import java.util.List;

import javax.ejb.Local;

import com.sunwayhorizo.health.business.dto.ResultsDTO;
import com.sunwayhorizo.health.ets.base.common.IBaseDao;
import com.sunwayhorizo.health.ets.base.persistent.EtVersions;
import com.sunwayhorizo.health.ets.dto.EtCodingSchemesDTO;
import com.sunwayhorizo.health.ets.dto.EtVersionsDTO;

@Local
public interface EtVersionsManagerLocal extends IBaseDao {
	
	/**
	 * 查询所有的历史记录
	 * @return
	 * @throws Exception
	 */
	public List<EtVersions> findEtVersions()throws Exception;
	
	/**
	 * 根據條件codingSchemesId,versionName查詢版本
	 * @param currentPage
	 * @param pageSize
	 * @param codingSchemesId      術語分類ID
	 * @param versionName		        版本名稱 
	 * @return
	 * @throws Exception
	 */
	public ResultsDTO findEtVersions(String codingSchemesId,String versionName)throws Exception;
	
	/**
	 * 根据条件查询记录
	 * @param codingSchemesId   字典ID
	 * @return
	 * @throws Exception
	 */
	public int findEtVersionsCount(String codingSchemesId,String versionName)throws Exception;
	
	/**
	 * 术语版本保存
	 * @param 版本DTO
	 * @return
	 * @throws Exception
	 */
	public ResultsDTO newEtVersions(EtVersionsDTO dto)throws Exception;
	
	/**
	 * 术语版本保存
	 * @param 版本DTO
	 * @return
	 * @throws Exception
	 */
	public ResultsDTO newEtVersions(List<EtVersionsDTO> dtos)throws Exception;
	
	
	/**
	 * 批量更新
	 * @param list      版本DTO集合
	 * @return
	 * @throws Exception
	 */
	public ResultsDTO updateEtVersions(EtVersionsDTO  dto)throws Exception;
	
	/**
	 * 批量刪除版本
	 * @param list　　　版本DTO集合
	 * @return
	 * @throws Exception
	 */
	public ResultsDTO delEtVersions(List<String> list)throws Exception;
	
	/**
	 * 组装树(术语分类下分版本)
	 * @return
	 * @throws Exception
	 */
	public ResultsDTO findCodingSchemesVersionsTree()throws Exception ;
	
	/**
	 * 根据术语字典查询术语版本
	 * @param codingSchemesId
	 * @return
	 * @throws Exception
	 */
	public boolean findEtVersionsByCodingSchemesId(String id)throws Exception;
	/**
	 * 检查同一术语字典中术语版本名称的唯一性
	 * @param etDto
	 * @return
	 * @throws Exception
	 */
	public ResultsDTO checkUnique(EtVersionsDTO etDto) throws Exception;
}


